﻿using System;
using System.Data;
using System.Web.UI.WebControls;
using Z16.BLI;

namespace Z16.SITE
{
    public partial class ListarComplexidade : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if ((Session["CodPerfil"] == null) || (Session["CodUsr"] == null))
            {
                Response.Write("<script>window.location=\'Login.aspx';</script>");
                return;
            }

            if (!IsPostBack)
                CarregarComplexidades(null, null);
        }

        private DataTable CarregarComplexidades(int? codComplexidade, string nome)
        {
            Complexidade c = new Complexidade();
            DataTable tabela = null;

            try
            {
                tabela = c.ListarComplexidade(codComplexidade, nome);
                GridView1.DataSource = tabela;
                GridView1.DataBind();
            }
            catch (Exception ee)
            {
                lblMensagem.Text = ee.Message;
            }
            finally
            {
                c = null;
            }
            return tabela;
        }

        protected void ExcluirComplexidade(object sender, GridViewDeleteEventArgs e)
        {
            int coplexidadeID = Int32.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString());

            Complexidade c = new Complexidade();
            try
            {
                c.ExcluirComplexidade(coplexidadeID);

                lblMensagem.Text = "Registro deletado com sucesso.";
                GridView1.DataSource = c.ListarComplexidade(null, null);
                GridView1.DataBind();
            }
            catch (Exception ee)
            {
                lblMensagem.Text = ee.Message;
            }
        }

        protected void btnPesquisar_Click(object sender, EventArgs e)
        {
            try
            {
                CarregarComplexidades(null, txtComplexidade.Text);
            }
            catch (Exception ee)
            {
                lblMensagem.Text = ee.Message;
            }
        }
    }
}